
#include <iostream>
#include <iomanip>

#include "Reference.h"
#include "Report.h"

using std::cout;
using std::endl;

int main (int argc, char * const argv[]) 
{  
 
 /* Creation of three objects instance of the class Report named R1, R2 and R3 */
 Report* R1 = new Report ();
 Report* R2 = new Report ();
 Report* R3 = new Report ();
 
 /* Test of the funcion "print", testing thus the following functions : { "getId", "getAuthor", "getTitle" "getDepartment", "getInstitution" "getNumberOfPages", and "getYearOfPublicaton" }*/
 cout << "* Let's test the report's data members by giving them their default values, then we find : " <<endl;
 R1->print();
 R2->print();
 R3->print();
 
 R1->setId(5427);
 R1->setYearOfPublication(1975);
 R1->setAuthor(" Hamza SHAWY ");
 R1->setTitle(" THE MYSTERIOUS KNOWLEDGE  "); 
 R1->setDepartment(" KNOWLEDGES  ");
 R1->setInstitution(" THE KNOWLEDGE'S INSTITUTION "); 
 R1->setNumberOfPages(17);
 
 
 R2->setId(01654);
 R2->setYearOfPublication(1989);
 R2->setAuthor(" Jonathan SCHRODER ");
 R2->setTitle(" HIGH HOPES ");
 R2->setDepartment(" FEELINGS ");
 R2->setInstitution(" THE FEELING'S INSTITUTION "); 
 R2->setNumberOfPages(29);
 
 
 R3->setId(3069);
 R3->setYearOfPublication(2002);
 R3->setAuthor(" Issa FORTIN ");
 R3->setTitle(" THEIR PARADISE  ");
 R3->setDepartment(" BELIEVES ");
 R3->setInstitution(" THE BELIEVE'S INSTITUTION  "); 
 R3->setNumberOfPages(8);
 
 cout << "* Then, let's give values to the attributs of the class REPORT ! We find thus : " <<endl;
 R1->print();
 R2->print();
 R3->print();

#ifdef WIN32
 system("PAUSE");
#endif
 
 return 0;
 }
